<?php
namespace Admin\Model;

use Base\Model\BaseModel;

class UserModel extends BaseModel {
	
	protected $_validate = array(
		//array(验证字段,验证规则,错误提示,验证条件,附加规则,验证时间)
		array('username', 'require', '用户名称不能为空！', 1, 'regex', BaseModel:: MODEL_INSERT  ),
		array('password', 'require', '密码不能为空！', 1, 'regex', BaseModel:: MODEL_INSERT ),
		array('username', 'require', '用户名称不能为空！', 0, 'regex', BaseModel:: MODEL_UPDATE  ),
		array('password', 'require', '密码不能为空！', 0, 'regex', BaseModel:: MODEL_UPDATE  ),
		array('username','','用户名已经存在！',0,'unique',BaseModel:: MODEL_BOTH ), // 验证username字段是否唯一
// 	    array('tel','','手机号已经存在！',0,'unique',BaseModel:: MODEL_BOTH ), // 验证tel字段是否唯一
		array('email','require','邮箱不能为空！',0,'regex',BaseModel:: MODEL_BOTH ), // 验证email字段是否唯一
		array('email','','邮箱帐号已经存在！',0,'unique',BaseModel:: MODEL_BOTH ), // 验证email字段是否唯一
		array('email','email','邮箱格式不正确！',0,'',BaseModel:: MODEL_BOTH ), // 验证email字段格式是否正确
	);

	// array(填充字段，填充内容，[填充条件,附加规则])
	protected $_auto = array(
	    array('add_time', 'mGetDate', BaseModel::MODEL_INSERT, 'callback'),
	    array('update_time', 'mGetDate', BaseModel::MODEL_BOTH, 'callback')
	);
	
	// 用于获取时间，格式为2012-02-03 12:12:12，注意，方法不能为private
	function mGetDate() {
		return date('Y-m-d H:i:s');
	}
	
	protected function _before_write(&$data) {
		parent::_before_write($data);
		
		if(!empty($data['password']) && strlen($data['password']) < 25){
			$data['password'] = sp_password($data['password']);
		}
	}
	
}

